package com.jiukuaidao.zhulin.module.commodity.contract;

import com.jiukuaidao.library.base.IBasePresenter;
import com.jiukuaidao.library.base.IBaseView;
import com.jiukuaidao.zhulin.data.TaskDataSource;
import com.jiukuaidao.zhulin.entity.ApiSortCatList;

import java.util.List;

/**
 * Author : H_Joker
 * Date : 2016/5/27
 * Description :
 */
public interface SortContract {

    interface View extends IBaseView<Presenter> {
        /**
         * 创建Framgments
         */
        void createFragments();

    }

    interface Presenter extends IBasePresenter {

        /**
         * 获取分类信息
         *
         * @param latitude
         * @param longitude
         * @param city
         */
        void loadCatList(String latitude, String longitude, String city);

        /**
         * 获取分类名称
         *
         * @return
         */
        List<String> getCateNames();

        /**
         * 设置分类名称
         *
         * @param names
         */
        void setCatNames(List<String> names);

        /**
         * 获取分类列表信息
         *
         * @return
         */
        List<ApiSortCatList.ApiSortCateListItem> getCateList();

    }

    interface Model extends TaskDataSource {
        /**
         * 获取分类名称
         *
         * @return
         */
        List<String> getCateNames();

        /**
         * 设置分类名称
         *
         * @param names
         */
        void setCatNames(List<String> names);

        /**
         * 存储分类列表信息
         *
         * @param list
         */
        void setCateList(List<ApiSortCatList.ApiSortCateListItem> list);

        /**
         * 获取分类列表信息
         *
         * @return
         */
        List<ApiSortCatList.ApiSortCateListItem> getCateList();
    }

}
